﻿using System;
using System.Collections.Generic;
using System.Linq;
using System.Text;
using System.Threading.Tasks;

namespace CSharpDay03
{
    public class Automobile : Transport
    {
        public int NumWheels { get; set; }
        public string Model { get; set; }
        public string Make { get; set; }

        public Automobile(int numWheels, string model, string make, int maxMph, bool isInUse, int yearCreated, int capacity)
            : base(maxMph, isInUse, yearCreated, capacity)
        {
            this.NumWheels = numWheels;
            this.Model = model;
            this.Make = make;
        }
    }

    public class Car : Automobile
    {
        public Car(bool hasmoonroof, string cartype, int numWheels, string model, string make, int maxMph, bool isInUse, int yearCreated, int capacity)
            : base(numWheels, model, make, maxMph, isInUse, yearCreated, capacity)
        {
            this.hasMoonRoof = hasmoonroof;
            this.CarType = cartype;
        }

        public bool hasMoonRoof { get; set; }
        public string CarType { get; set; }
    }

    public class Motorcycle : Automobile
    {
        public int NumCylinders { get; set; }
        public bool LookCoolWhileRiding { get; set; }

        public Motorcycle(int numCylinders, bool lookCool, int numWheels, string model, string make, int maxMph, bool isInUse, int yearCreated, int capacity)
            : base(numWheels, model, make, maxMph, isInUse, yearCreated, capacity)
        {
            this.NumCylinders = numCylinders;
            this.LookCoolWhileRiding = lookCool;
        }
    }
}